1. Field of the Invention
The present invention relates to an array type disk system in which a plurality of disk units are arranged in the form of arrays and which is used as the storage system of a computer system, and also to a method of controlling the array type disk system. More particularly, it relates to a technique for the optimization of a method of updating redundant data.
2. Description of the Related art
A disk array system (RAID: Redundant Arrays of Inexpensive Disks), that is, an external memory whose read/write speeds are heightened by the parallel operations of a plurality of magnetic disk units and whose reliability is enhanced by a redundant construction, has been proposed in lieu of a magnetic disk unit (a hard disk unit) which has heretofore been employed as a single unit (paper: "A Case for Redundant Arrays of Inexpensive Disks (RAID)", David A. Patterson, Garth Gibson, and Randy H. Katz, Computer Science Division, Department of Electrical Engineering and Computer Sciences, University of California Berkeley). In the paper, Nos. 1 thru 5 are assigned to the levels of the disk array system in accordance with the constructions thereof. It is well known that enhancement in performance is expected of RAID Level-3 as to a sequential access mode in which a large amount of data are transferred, while enhancement in performance is expected of RAID Level-5 as to a random access mode in which data of small sizes are often read and written ("Feature Articles: Disk Array Systems" in NIKKEI ELECTRONICS, Apr. 26, 1993 No. 579, pp. 77-91).
FIG. 10A illustrates the relationship between storage data and parity data in the RAID Level-3 construction (4-data 1-parity configuration). In addition, FIG. 10B illustrates the relationship between storage data and parity data in the RAID Level-5 construction (4-data 1-parity configuration). In each of FIGS. 10A and 10B, numerals 0 thru 19 denote the locations of the storage data, while symbols P0-3 thru P16-19 denote the parity data of the corresponding storage data. By way of example, the parity data P0-3 corresponds to the storage data 0 thru 3. At the RAID level-3 , byte stripes are employed, and a parity disk is fixed. On the other hand, at the RAID level-5, the parity data are distributively recorded on the respective disks. Thus, at this RAID level-5, processing steps can be prevented from concentrating in one parity disk in a parity update operation, and degradation in the performance of the disk array system in a write operation can be suppressed. In writing data, however, corresponding parity data needs to be simultaneously updated, so that the RAID Level-5 construction inevitably becomes inferior in the write performance to a disk system having no redundancy.
Here, when a read process is performed by the RAID Level-3 construction shown in FIG. 10A, the storage data of only four disk units are read out in parallel even in the presence of five disk drives because one disk unit is dedicated to the parity data. On the other hand, when a read process is performed by the RAID Level-5 construction shown in FIG. 10B, a waiting time for skipping the parity data recorded midway of the storage data is required, with the result that the read performance degrades.
Now, the read process and a write process which are based on a prior-art system will be explained in conjunction with FIG. 15, FIG. 16 and FIG. 17.
FIG. 17 illustrates an example of the architecture of the disk array system in the prior art. This system is broadly constructed of three sections; a host system 500, an array board 600, and a group of magnetic disk units 790 arranged in the form of arrays (magnetic disk units 701 thru 705).
The host system 500 is constituted by a CPU (Central Processing Unit) 501, a second cache 502, a chip set 503 and a main memory 505. The CPU 501, second cache 502 and chip set 503 are interconnected by a CPU bus 504.
The array board 600 is connected to the extension bus 509 of the host system 500 by the use of a bus interface 601. In addition to the bus interface 601, the array board 600 includes an MPU (Micro Processing Unit) 602 and five SCSI (Small Computer System Interface) controllers 603.
As stated above, the group of magnetic disk units 790 include the five magnetic disk units 701 thru 705. Each of the magnetic disk units 701 thru 705 has an SCSI controller 710, which is connected with the corresponding SCSI controller 603 of the array board 600 by cable. Besides, the group of magnetic disk units 790 stores therein storage data which are transferred from the host system 500, and parity data which are redundant data peculiar to such a disk array system.